package ar.com.algotres.tpdos.model.fisica;

import static java.lang.Math.sqrt;

public class Posicion {

	private Double x;
	private Double y;

	public Posicion(Double x, Double y) {
		this.x = x;
		this.y = y;
	}

	public Integer getX() {
		return x.intValue();
	}

	public Integer getY() {
		return y.intValue();
	}

	public Double getXDouble() {
		return x;
	}

	public Double getYDouble() {
		return y;
	}

	/**
	 * Devuelve la distancia a otra posicion
	 * 
	 * @param otraPosicion
	 * @return
	 */
	public Double distanciaA(Posicion otraPosicion) {
		Double deltaX = otraPosicion.x - this.x;
		Double deltaY = otraPosicion.y - this.y;
		return sqrt((deltaX * deltaX) + (deltaY * deltaY));

	}

	@Override
	public boolean equals(Object posicion) {
		Posicion pos = (Posicion) posicion;
		return (Math.abs(pos.x - this.x)) <= 1
				&& (Math.abs(pos.y - this.y)) <= 1;
	}

	@Override
	public String toString() {
		return "(" + x + ", " + y + ")";
	}

}
